<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/displaytag.tld" prefix="display"%>
<%@ page import="java.util.*"%>

<script language="JavaScript" src="<%= request.getContextPath() + "/js/popUP.js" %>"></script>
<link href="<%= request.getContextPath() + "/css/bloques.css" %>" rel="stylesheet" type="text/css">
<!--<link href="<%= request.getContextPath() + "/css/table.css" %>" rel="stylesheet" type="text/css">-->


<script language="javascript">
  function buscarSubprogramas(accion){
    var prog;
    var sede;
    sede = document.formBeneficiosSede.code.value;
    prog = document.formBeneficiosSede.codePrograma.value;
    if(sede != 'nulo' || prog != 'nulo')
    {
      habilita2();
      if(document.formBeneficiosSede.dia1.value != 'nulo' && 
      document.formBeneficiosSede.mes1.value != 'nulo' &&
      document.formBeneficiosSede.ano1.value != 'nulo'){
        if(document.formBeneficiosSede.dia2.value != 'nulo' && 
        document.formBeneficiosSede.mes2.value != 'nulo' &&
        document.formBeneficiosSede.ano2.value != 'nulo'){
          fechainicial = document.formBeneficiosSede.ano1.value + 
                         document.formBeneficiosSede.mes1.value +
                         document.formBeneficiosSede.dia1.value;
          fechafinal =   document.formBeneficiosSede.ano2.value + 
                         document.formBeneficiosSede.mes2.value +
                         document.formBeneficiosSede.dia2.value;
          
          document.formBeneficiosSede.fechaInicial.value = document.formBeneficiosSede.dia1.value + 
                         '/'+document.formBeneficiosSede.mes1.value +'/'+
                         document.formBeneficiosSede.ano1.value;
                         
          document.formBeneficiosSede.fechaFinal.value = document.formBeneficiosSede.dia2.value + 
                         '/'+document.formBeneficiosSede.mes2.value +'/'+
                         document.formBeneficiosSede.ano2.value;
          if(fechainicial > fechafinal){
            alert('La fecha inicial debe ser menor a la fecha final');
            return;
          }
          
        }else{
          alert('Debe seleccionar una fecha final');
          return;
        }
      }
      document.formBeneficiosSede.action = '<%=request.getContextPath()+"/Reportes/Detallados/SeleccionarFiltros.do"%>'
      document.formBeneficiosSede.accion.value = accion;
      document.formBeneficiosSede.submit();
    }else
    {
      alert('Por favor seleccione un programa o una sede');
    }
  }
  
   function getProgramas(accion){
    document.formBeneficiosSede.target = '_self';
    document.formBeneficiosSede.action = '<%=request.getContextPath()+"/Reportes/Detallados/SeleccionarFiltros.do"%>';
    document.formBeneficiosSede.accion.value = accion;
    document.formBeneficiosSede.submit();
    }
  
  function validarCantidad(field){
    var valid = "0123456789"
    var ok = "yes";
    var temp;
    for (var i=0; i<field.value.length; i++) {
    temp = "" + field.value.substring(i, i+1);
    if (valid.indexOf(temp) == "-1") ok = "no";
    }
    if (ok == "no") {
    alert("Cantidad no valido, solo se permiten numeros!!");
    field.focus();
    field.select();
    }
  }
  
  function habilita(nombre){
     document.forms['formBeneficiosSede'].elements[nombre].disabled=false;
  }
  
  function habilita2(){
     document.formBeneficiosSede.mes1.disabled = false; 
     document.formBeneficiosSede.mes2.disabled = false;
     document.formBeneficiosSede.ano1.disabled = false;
     document.formBeneficiosSede.ano2.disabled = false;
    
  } 

 var a, mes, dia, anyo, febrero;
  
 function anyoBisiesto(anyo)
 {
     if (anyo < 100)
         var fin = anyo + 1900;
     else
         var fin = anyo ;
     if (fin % 4 != 0)
         return false;
     else
     {
         if (fin % 100 == 0)
         {
             if (fin % 400 == 0)
             {
                 return true;
             } else
             {
                 return false;
             }
         }
         else
         {
             return true;
         }
     }
 }
    


 function validar(vdia,vmes,vano)
 {
    var d = document.forms['formBeneficiosSede'].elements[vdia].value;
    var m = document.forms['formBeneficiosSede'].elements[vmes].value;
    var an = document.forms['formBeneficiosSede'].elements[vano].value;
    a=d+"/"+m+"/"+an;
    dia=a.split("/")[0];
    mes=a.split("/")[1];
    anyo=a.split("/")[2];
    if( (isNaN(dia)==true) || (isNaN(mes)==true) || (isNaN(anyo)==true) )
    {
       alert("La fecha introducida debe estar formada solo por numeros");
       return;
    }
    if(anyoBisiesto(anyo))
        febrero=29;
    else
        febrero=28;
      
    if ((mes<1) || (mes>12))
    {
        alert("El mes introducido no es valido. Por favor, introduzca un mes correcto");
        document.forms['formBeneficiosSede'].elements[vmes].focus();
        document.forms['formBeneficiosSede'].elements[vdia].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].disabled=true;
        document.forms['formBeneficiosSede'].elements[vano].value='nulo';
        document.forms['formBeneficiosSede'].elements[vano].disabled=true;
        //document.actualizarBeneficiario.fecha.select();
        return;
    }
       
    if ((mes==2) && ((dia<1) || (dia>febrero)))
    {
        alert("El dia introducido no es valido. Por favor, introduzca un dia correcto");
        
        document.forms['formBeneficiosSede'].elements[vdia].focus();
        document.forms['formBeneficiosSede'].elements[vdia].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].disabled=true;
        document.forms['formBeneficiosSede'].elements[vano].value='nulo';
        document.forms['formBeneficiosSede'].elements[vano].disabled=true;
        //document.actualizarBeneficiario.fecha.select();
        return;
    }
      
    if (((mes==1) || (mes==3) || (mes==5) || (mes==7) || (mes==8) || (mes==10) || (mes==12)) && ((dia<1) || (dia>31)))
    {
        alert("El dia introducido no es valido. Por favor, introduzca un dia correcto");
        
        document.forms['formBeneficiosSede'].elements[vdia].focus();
        document.forms['formBeneficiosSede'].elements[vdia].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].disabled=true;
        document.forms['formBeneficiosSede'].elements[vano].value='nulo';
        document.forms['formBeneficiosSede'].elements[vano].disabled=true;
        //document.actualizarBeneficiario.fecha.select();
        return;
    }
       
    if (((mes==4) || (mes==6) || (mes==9) || (mes==11)) && ((dia<1) || (dia>30)))
    {
        alert("El dia introducido no es valido. Por favor, introduzca un dia correcto");
        
        document.forms['formBeneficiosSede'].elements[vmes].focus();
        document.forms['formBeneficiosSede'].elements[vdia].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].value='nulo';
        document.forms['formBeneficiosSede'].elements[vmes].disabled=true;
        document.forms['formBeneficiosSede'].elements[vano].value='nulo';
        document.forms['formBeneficiosSede'].elements[vano].disabled=true;
        //document.actualizarBeneficiario.fecha.select();
        return;
    }
       
    if ((anyo<1990) || (anyo>2040))
    {
       alert("El año introducido no es valido. Por favor, introduzca un año entre 1900 y 2010");
       
       document.forms['formBeneficiosSede'].elements[vano].focus();
       document.forms['formBeneficiosSede'].elements[vdia].value='nulo';
       document.forms['formBeneficiosSede'].elements[vmes].value='nulo';
       document.forms['formBeneficiosSede'].elements[vmes].disabled=true;
       document.forms['formBeneficiosSede'].elements[vano].value='nulo';
       document.forms['formBeneficiosSede'].elements[vano].disabled=true;
       //document.actualizarBeneficiario.fecha.select();
       return;
    }
 }
 
   
 function Sede(){ 
    var i 
    for(i=0;i<document.formBeneficiosSede.generar.length;i++)
    {
      if(document.formBeneficiosSede.generar[i].checked==true)
      {
        document.formBeneficiosSede.posicion.value=i;
        break;
      } 
    }
    document.formBeneficiosSede.submit();
  
 }
 
 

 
</script>
<script src="<%=request.getContextPath()%>/js/displaytag.js" type="text/javascript"></script>
<table cellspacing="3" cellpadding="2" border="0" width="70%" align="center">
  <form name="formBeneficiosSede" action="<%=request.getContextPath()+"/Reportes/Detallados/Seleccion.do"%>" method="post">
  <tr>
    <td class="titulosenblanco" colspan="3">
      <DIV align="center">
        <STRONG>Reporte&nbsp;Detallado&nbsp;Beneficio&nbsp;Otorgado </STRONG>
      </DIV>
    </td>
  </tr>
  <tr>
    <td class="titulosenblanco" colspan="3">&nbsp;</td>
  </tr>
  <tr>
    <td align="center" class="celdatabla" colspan="3">Seleccione los criterios de busqueda</td>
  </tr>
  <tr>
    <td class="titulosenblanco" colspan="3">&nbsp;</td>
  </tr>
  <tr>
    <td class="celdatabla" width="31%">Sede:</td>
    <td width="44%">
      <logic:notPresent name="sedes">
        <DIV align="center">
          <%= session.getAttribute("msg")%>
           <%session.removeAttribute("msg");%>
        </DIV>
      </logic:notPresent>
       <%   Object codeSede = request.getParameter("code"); 
            if(codeSede==null) codeSede = "nulo";
       %>
        <div align="left">
          <logic:present name="sedes">
            <logic:iterate id="sede" name="sedes" length="1" type="com.cs.beneficios.business.model.SedeVO">
              <html:select name="sede" property="code" title="Sede" styleClass="form" value="<%=(String)codeSede%>">
                <option value="nulo" selected="selected">Seleccione una sede</option>
                <html:options name="sede" labelName="codeSede" labelProperty="nombre" property="code" collection="sedes"/>
              </html:select>
            </logic:iterate>
          </logic:present>
        </div>
    </td>
    <td class="celdatabla" width="25%">&nbsp;</td>
 
   <tr>
    <td class="celdatabla" width="31%">Secretarias:</td>
    <td width="44%">
      <logic:notPresent name="areas">
        <DIV align="center">
          <%= session.getAttribute("msg")%>
           <%session.removeAttribute("msg");%>
        </DIV>
      </logic:notPresent>
       <%   Object codeArea = request.getParameter("codearea"); 
            if(codeArea==null) codeArea = "nulo";     
       %>
        <div align="left">
          <logic:present name="areas">
            <logic:iterate id="area" name="areas" length="1" type="com.cs.beneficios.business.model.AreaVO">
              <html:select name="area" property="codearea" title="Area" styleClass="form" value="<%=(String)codeArea%>" onchange="getProgramas('areas');">
                <option value="nulo" selected="selected">Seleccione una secretaria</option>
                <html:options name="area" labelName="codeArea" labelProperty="nombre" property="codearea" collection="areas"/>
              </html:select>
            </logic:iterate>
          </logic:present>
        </div>
    </td>
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
 
  <tr>
    <td class="celdatabla" width="31%">Programa:</td>
    <td width="44%">
      <logic:notPresent name="programas">
        <DIV align="center">
          <%= session.getAttribute("msg")%>
           <%session.removeAttribute("msg");%>
        </DIV>
      </logic:notPresent>
        <%   Object codePrograma = request.getParameter("codePrograma"); %>
        <div align="left">
          <logic:present name="programas">
            <logic:iterate id="programa" name="programas" length="1" type="com.cs.beneficios.business.model.ProgramaVO">
              <html:select name="programa" property="codePrograma" onchange="buscarSubprogramas('BuscarSubprogrmas');" title="Programa" styleClass="form" value="<%=(String)codePrograma%>">
                <option value="nulo">Seleccione un programa</option>
                <html:options name="programas" labelName="codigo" labelProperty="nombre" property="code" collection="programas"/>
              </html:select>
            </logic:iterate>
          </logic:present>
        </div>
      
    </td>
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
  <% 
        String strCodePrograma = (String)codePrograma;
            if(codePrograma != null && !strCodePrograma.equals("nulo")){
        %>
  <tr>
    <td class="celdatabla" width="31%">Beneficio:</td>
    <td width="44%">
      <div align="left">
        <logic:notPresent name="subprogramas">
          <DIV align="center">
            <%= session.getAttribute("msg")%>
             <%session.removeAttribute("msg");%>
          </DIV>
        </logic:notPresent>
        <%   Object codeSubPrograma = request.getParameter("codeSubPrograma"); 
             if(codeSubPrograma==null) codeSubPrograma = "nulo";
       %>
        <logic:present name="subprogramas">
          <logic:iterate id="subprograma" name="subprogramas" length="1" type="com.cs.beneficios.business.model.SubProgramaVO">
            <html:select name="subprograma" property="codeSubPrograma" onchange="buscarSubprogramas('BuscarSiTieneAtributo');" title="Subprograma" styleClass="form" value="<%=(String)codeSubPrograma%>">
              <option value="nulo">Seleccione un subprograma</option>
              <html:options name="subprogramas" labelName="codigo" labelProperty="nombre" property="code" collection="subprogramas"/>
            </html:select>
          </logic:iterate>
        </logic:present>
      </div>
    </td>
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
  <%if(codeSubPrograma != null && !codeSubPrograma.equals("nulo")){%>
  <tr>
    <logic:present name="Gestor">
    <%  String codigovfl = request.getParameter("codigovfl");
        if(codigovfl == null){
                codigovfl = "nulo";
        }
    %>
    <td class="celdatabla" width="31%">Gestor:</td>
    <td><logic:iterate id="gestor" name="Gestor" length="1" type="com.cs.beneficios.business.model.ValorFlexibleVO">
            <html:select name="Gestor" property="codigovfl" title="Gestor" styleClass="form" value="<%=codigovfl%>">
            <option value="nulo">Seleccione un gestor</option>
            <html:options name="Gestor" labelName="codigovfl" labelProperty="codigovfl" property="codigovfl" collection="Gestor"/>
            </html:select>
        </logic:iterate>
    </td>
    </logic:present>
  </tr>
  
  <% 
      } else {
        session.removeAttribute("Gestor");
        session.removeAttribute("codigovfl");
        session.removeAttribute("codigoAtrGestor");
      }
    }
  %>
  <input type="hidden" name="fechaInicial" value=""/>
  <input type="hidden" name="fechaFinal" value=""/>
  <tr>
    <td class="celdatabla" width="31%">Fecha inicial:</td>
    <td align="left">
      <FONT class="celdatabla">dia</FONT> <select name="dia1" onclick="habilita('mes1')" Class="form">
      <option value="nulo">---</option>
<%                  
      for(int d = 1; d<=31;d++)
      {
        String dia = d+"";
        if(d<10) dia = "0"+d;
%>
      <option Class="form" value="<%=dia%>"><%=dia%></option>
     
<%          
      }                  
%>                  
            
      </select>
      <FONT class="celdatabla">mes</FONT> <select disabled="disabled" name="mes1" onchange="habilita('ano1')" Class="form">
      <option value="nulo">---</option>
<% 
      for(int m = 1; m<=12;m++)
      {
        String mes = m+"";
        if(m<10) mes = "0"+m;
%>
        <option Class="form" value="<%=mes%>"><%=mes%></option>
<%          
      }                  
%>

      </select>
      <FONT class="celdatabla">a&ntilde;o</FONT> <select disabled="disabled" name="ano1" onchange="validar('dia1','mes1','ano1')" Class="form">
      <option value="nulo">-----</option>
<% 
    for(int a = 1990; a<=2040;a++)
    {
      String ano = a+"";
%>                  
      <option Class="form" value="<%=ano%>"><%=ano%></option>

<%          
    }                  
%>                  
      
      </select>
    </td>
    
    
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
  <tr>
    <td class="celdatabla" width="31%">Fecha final:</td>
    <td align="left">
      <FONT class="celdatabla">dia</FONT> <select name="dia2" onchange="habilita('mes2')" Class="form">
      <option value="nulo">---</option>
<%                  
      for(int d = 1; d<=31;d++)
      {
        String dia = d+"";
        if(d<10) dia = "0"+d;
%>
      <option Class="form" value="<%=dia%>"><%=dia%></option>
     
<%          
      }                  
%>                  
            
      </select>
      <FONT class="celdatabla">mes</FONT> <select name="mes2" onchange="habilita('ano2')" disabled="disabled" Class="form">
      <option value="nulo">---</option>
<% 
      for(int m = 1; m<=12;m++)
      {
        String mes = m+"";
        if(m<10) mes = "0"+m;
%>
        <option Class="form" value="<%=mes%>"><%=mes%></option>
<%          
      }                  
%>

      </select>
      <FONT class="celdatabla">a&ntilde;o</FONT> <select name="ano2" disabled="disabled" onchange="validar('dia2','mes2','ano2')" Class="form">
      <option value="nulo">-----</option>

<% 
    for(int a = 1990; a<=2040;a++)
    {
      String ano = a+"";
%>                  
      <option Class="form" value="<%=ano%>"><%=ano%></option>

<%          
    }                  
%>                  
      
      </select>
    </td>
    
    
    
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
  <tr>
    <td class="celdatabla" width="31%">&nbsp;</td>
    <td width="44%">
      <div align="center">
          <input type="hidden" name="accion" value=""/>
       <!--   <input type="button" value="Agregar" name="continuar" onclick="validarOtros();"/> -->
          <input type="button" value="buscar" name="buscar" onclick="buscarSubprogramas('BuscarTodo');"/>
        <P>&nbsp;</P>
      </div>
    </td>
    <td class="celdatabla" width="25%">&nbsp;</td>
  </tr>
  <tr>
  <td colspan="3" align="center">
    <logic:present name="msg">
      <DIV center="center"><%=session.getAttribute("msg")%></DIV>
       <%session.removeAttribute("msg");%>
    </logic:present>
  </td>
  </tr>
  
  
</table> 

<logic:present scope="request" name="msg3">
  <BR>
  <strong><DIV align="center"><%=(String)request.getAttribute("msg3")%></DIV></strong>
  <BR>
</logic:present> 

<logic:present scope="request" name="errorfecha">
  <BR>
  <strong><DIV align="center" class="titulosenblanco"><%=(String)request.getAttribute("errorfecha")%></DIV></strong>
  <BR>
</logic:present> 

<logic:notPresent scope="request" name="errorfecha">

  <table  cellspacing="3" cellpadding="2" border="0" width="90%" align="center">
  
      <logic:present name="BeneficiosOtorgado">        
      <tr>
        <td class="titulosenblanco"><div align="center">Beneficios Otorgados</div></td>
      </tr>
      <tr>
      <td>
          <display:table  name="sessionScope.BeneficiosOtorgado" pagesize="20" id="beneotot" cellpadding="3" cellspacing="1" style="width:100%" class="bordestable">
              <display:column headerClass="headerTable" title="Programa" class="Numero" sortable="true" >
                  <div align="center">
                  <bean:write name="beneotot" property="nombrePrograma" /> 
                  </div>
              </display:column>
              <display:column headerClass="headerTable" title="Beneficio" class="Numero" sortable="true" >
                  <div align="center">
                  <bean:write name="beneotot" property="nombreSubprograma"/> 
                  </div>
              </display:column>
              <display:column headerClass="headerTable" title="Sede" class="Numero" sortable="true">
                  <div align="center">
                  <bean:write name="beneotot" property="nombreSede"/>
                  </div>
              </display:column>
              <display:column headerClass="headerTable" title="Cantidad" class="Numero" sortable="true" >
                  <div align="center">
                  <bean:write name="beneotot" property="cantidad"/>
                  </div>
              </display:column>
              <display:column headerClass="headerTable" title="Generar Reporte" class="Numero">
                  <div align="center">
                  <input type="radio" name="generar" value="<bean:write name="beneotot" property="codeSubprograma"/>"/>
               <!--   <input type="radio" name="sede" value="<bean:write name="beneotot" property="codeSede"/>"/>  -->              
                  
                  <input type="HIDDEN" name="prueba" value="<bean:write name="beneotot" property="codeSede"/>"/>
                  </div>
              </display:column>	
              
          </display:table>
          <P align="center">
            <input type="HIDDEN" name="posicion" value="0"/> 
         <!--   <input type="submit" value="Generar"/>-->
         <%session.removeAttribute("ListaFiltrado");%>
            <input type="Button" name="" value="Generar" onclick="Sede()">
            
          </P>
        </td>
        </tr>
       </logic:present>
  </table>
</logic:notPresent>
</form>
</table>